import { createRouter, createWebHistory } from "vue-router";
// 阅读计划
import dashborad from "./routes/dashborad";
//图书馆
import library from "./routes/library";
// 图书分类、分类管理、新增分类
import classification from "./routes/classification";
//书籍、书籍管理、新增书籍
import book from "./routes/book";
// 动态管理、评论
import dynamic from "./routes/dynamic";
// 权限、管理员列表、新增管理员、角色管理、新增角色
import permissions from "./routes/permissions";

import useConfigStore from "@/stores/user.js";

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: "/",
      name: "root",
      beforeEnter(to, from, next) {
        //这个不能放在外面的原因是执行顺序的问题
        const userStore = useConfigStore();
        //判断用户是否登录了
        if (userStore.isLogin) {
          next();
        } else {
          // next("/login");
          next({ name: "login" });
        }
      },
      component: () =>
        import(/* webpackChunkName: "root" */ "../layout/Layout.vue"),
      children: [
        // 首页

        //阅读计划
        dashborad,

        // 图书馆和图书馆管理和新增图书馆
        library,
        // 图书分类、分类管理、新增分类
        classification,
        // 书籍、书籍管理、新增书籍
        book,
        // 动态管理、评论
        dynamic,
        // 权限、管理员列表、新增管理员、角色管理、新增角色
        permissions,
      ],
    },

    {
      path: "/login",
      name: "login",
      component: () =>
        import(/* webpackChunkName: "login" */ "../views/Login/Login.vue"),
    },
  ],
});

export default router;
